package com.zx.core.page;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;


@Data
@AllArgsConstructor
@NoArgsConstructor
public class PageInfo {
    /**
     * 页数
     */
    private Long pageNum;
    /**
     * 页面大小
     */
    private Long pageSize;


    public Long getPageSize() {
        if (null == pageSize || pageSize == 0L) {
            pageSize = 20L;
        }
        return pageSize;
    }

    /**
     * <p>分页计算公式:<br>
     * sql语句：select * from 表名 limit start,pageSize;<br>
     * start:就是当前页的起始索引,pageSize就是每页的条数.<br>
     * currentPage:就是当前页.<br>
     * 公式:start=(currentPage-1)*pageSize
     * </p>
     *
     * @return 页数
     */
    public Long getPageNum() {
        if (null == pageNum) {
            pageNum = 1L;
        }
        return (pageNum - 1L) * getPageSize();
    }
}

